package cheme.ProcessModel.ProcessUnits.Streams.Tags;


public class aaa_SimpleTag
{
//	private static final long serialVersionUID = 1L;
//
//	public static final int OVERALL_INDEX = 0;
//	public static final int LIST_INDEX = 1;
//	
//	/**
//	 * @param parent
//	 * @param initBasis the overall component which list components will emulate for initialization purposes
//	 */
//	public SimpleTag(IModelElement parent)
//	{
//		super(parent);
//	}
//	
//	/*
//	 * Some model elements will need a two step initialization, the first to create and hook model to editpart layer,
//	 * a second to add initial children and such that need to invoke unpdates in that editpart layer
//	 */
//	public void initialize()
//	{
//		OverallTagComponent child = new OverallTagComponent(this);
//		add(child, OVERALL_INDEX);
//		
//		TagComponentList list = new TagComponentList(this, getOverallTag());
//		super.add(list, LIST_INDEX);
//	}
//	
//	/**
//	 * The primaryDescriptor describese the stream "overall flow"
//	 * @return the primaryDescriptor
//	 */
//	public OverallTagComponent getOverallTag()
//	{
//		if(getChildren().size() > OVERALL_INDEX)
//		{
//			return (OverallTagComponent)get(OVERALL_INDEX);
//		}
//		
//		return null;
//	}
//	
//	public TagComponentList getTagComponentList()
//	{
//		if(getChildren().size() > LIST_INDEX)
//		{
//			return (TagComponentList)get(LIST_INDEX);
//		}
//		
//		return null;
//	}
//	
//	 private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException
//	 {
//		 /*
//		  * Make sure the interpreter can listen to my changes.
//		  * Specifically, when a tag component is added to this list, the addition needs to
//		  * trigger an initial interpretation of that component. Likewise, removal needs to be processed.
//		  */
//		 
//		 Interpreter.getInstanceFor(getRoot()).hookModelElement(this);
//		 
//		 /*
//		  * Make sure I can listen to my children created form a past session.
//		  */
//		 
//		 for(IChild child : getChildren())
//		 {
//			 child.addPropertyChangeListener(this);
//			 
//			 /*
//			  * Initiate an interpretation of the re-instantiated elements.
//			  */
//			 
//			 firePropertyChange(P_CHILD, null, child);
//		 }
//	 }
//	
//	@Override
//	protected void hookChild(IChild child)
//	{
//		/*
//		 * The interpreter is interested in changes made at the equation level of the model.
//		 */
//		
//		Interpreter.getInstanceFor(getRoot()).hookModelElement(child);
//		super.hookChild(child);
//	}
//
//	@Override
//	protected String getToStringSeperator()
//	{
//		return "\n------------------------------------\n";
//	}
//	
//	@Override
//	protected void handleTextChange(PropertyChangeEvent evt)
//	{
////		firePropertyChange(evt.getPropertyName(), evt.getOldValue(), evt.getNewValue());
//	}
}